define("mediaCommon/mediaLogic/fillLogicMixin",["lodash","react","santaProps","utils","balata"],function(a,b,c,d,e){"use strict";var f=d.mediaConsts;function g(b){return a.get(b.compDesign,["background","mediaRef"],a.get(b.compData,["background","mediaRef"]))||{}}return{behaviorsAPI:{play:{methodName:"playMedia"},pause:{methodName:"pauseMedia"},stop:{methodName:"stopMedia"}},propTypes:a.defaults({id:c.Types.Component.id.isRequired,styleId:c.Types.Component.styleId.isRequired,compData:c.Types.Component.compData,compDesign:c.Types.Component.compDesign,compStaticBehaviors:c.Types.Component.compStaticBehaviors,compDynamicBehaviors:c.Types.Component.compDynamicBehaviors,bgStyle:b.PropTypes.object,onClick:b.PropTypes.func,mediaAspect:c.Types.SiteAspects.mediaAspect.isRequired,mediaQuality:c.Types.Media.mediaQuality,isMobileView:c.Types.isMobileView.isRequired,componentViewMode:c.Types.RenderFlags.componentViewMode.isRequired,isPlayingAllowed:c.Types.RenderFlags.isPlayingAllowed.isRequired},c.santaTypesUtils.getSantaTypesByDefinition(e)),getInitialState:function(){this.registerPlayer(this.props);this.mediaAPI=null;return{}},componentWillReceiveProps:function(a){this.handleVideoDataChange(this.props,a)},handleAutoplay:function(a,b){var c=b===f.playbackTypes.READY;var d=g(a).autoplay;if(c&&d&&a.isPlayingAllowed){this.playMedia()}},handleVideoDataChange:function(a,b){var c=g(b);var d=g(a);if(c.videoId!==d.videoId){this.unregisterPlayer(a);this.registerPlayer(b)}else if(c.autoplay!==d.autoplay&&a.isPlayingAllowed){if(c.autoplay){this.playMedia()}else{this.pauseMedia()}}},registerPlayer:function(b){var c=g(b);if(a.get(c,"type")==="WixVideo"){var d={playerType:"mediaContainer",mediaData:c,services:{viewport:{callback:this.onViewportChange,eventTypes:["in","out"]},visibility:{callback:this.onVisibilityChange},fileAvailability:{callback:this.onFileAvailability,mediaQuality:b.mediaQuality}}};b.mediaAspect.registerPlayer(b.id,d)}},unregisterPlayer:function(a){a.mediaAspect.unregisterPlayer(a.id)},updatePlayerState:function(a,b){a.mediaAspect.updatePlayerState(a.id,b)},updateQualityState:function(a,b,c){a.mediaAspect.updateQualityState(b,c)},onMediaChange:function(a){var b=this.props.mediaAspect.getData(this.props.id);var c=this.mediaStateChangeLogic(a,b);if(a.type===f.eventTypes.LOAD){this.handleAutoplay(this.props,c.playbackState)}this.updatePlayerState(this.props,c)},mediaStateChangeLogic:function(a,b){var c={};switch(a.type){case f.eventTypes.MOUNT:c={playbackState:a.playbackState};break;case f.eventTypes.LOAD:c={playbackState:a.playbackState,previousPlaybackState:"",volume:a.volume,fullscreen:false,muted:a.muted,currentTime:a.currentTime,progress:a.progress,seekStarted:false};break;case f.eventTypes.PLAYSTATE:if(a.playbackState===f.playbackTypes.SEEKING){var d=b.playbackState!==f.playbackTypes.SEEKING;c={playbackState:a.playbackState};if(d){c.previousPlaybackState=b.playbackState}}else if(a.playbackState===f.playbackTypes.SEEKING_ENDED){c={playbackState:b.previousPlaybackState}}else{c={playbackState:a.playbackState}}break;case f.eventTypes.ERROR:break;case f.eventTypes.TIME_UPDATE:c={currentTime:a.currentTime};break;case f.eventTypes.PROGRESS:c={progress:a.progress};break;case f.eventTypes.VOLUME:c={volume:a.volume,muted:a.muted};break}return c},onViewportChange:function(a){if(!this.props.isPlayingAllowed||a.isFixed){return}var b=this.props.mediaAspect.getData(this.props.id);if(a.in){if(b.previousPlaybackState===f.playbackTypes.PLAYING){this.playMedia()}}else if(a.out){if(b.playbackState===f.playbackTypes.PLAYING){this.updatePlayerState(this.props,{previousPlaybackState:f.playbackTypes.PLAYING});this.pauseMedia()}else{this.updatePlayerState(this.props,{previousPlaybackState:b.playbackState})}}},onVisibilityChange:function(a){if(!this.props.isPlayingAllowed){return}var b=this.props.mediaAspect.getData(this.props.id);if(!a.hidden){if(b.previousPlaybackState===f.playbackTypes.PLAYING){this.playMedia()}}else if(a.hidden){if(b.playbackState===f.playbackTypes.PLAYING){this.updatePlayerState(this.props,{previousPlaybackState:f.playbackTypes.PLAYING});this.pauseMedia()}else{this.updatePlayerState(this.props,{previousPlaybackState:b.playbackState})}}},onFileAvailability:function(a){this.updateQualityState(this.props,a.videoId,{mediaQuality:a.mediaQuality,mediaReadyState:a.readyState});this.updatePlayerState(this.props,{mediaQuality:a.mediaQuality,mediaReadyState:a.readyState})},setMediaAPI:function(a){this.mediaAPI=a},mediaCommandsLogic:function(a,b){if(this.mediaAPI){this.mediaAPI(a,b)}},playMedia:function(){this.mediaCommandsLogic("play")},pauseMedia:function(){this.mediaCommandsLogic("pause")},stopMedia:function(){this.mediaCommandsLogic("stop")},createFillLayers:function(b){var c=a.assign({},this.props,b);var d={skin:"skins.viewer.balata.balataBaseSkin",styleId:c.styleId+f.balataConsts.BALATA};var e=c.isMobileView?"mobile":"desktop";var g={ref:f.balataConsts.BALATA,id:c.id+f.balataConsts.BALATA,key:c.componentViewMode+e,parentId:c.id,style:c.bgStyle||f.defaultStyle,compBehaviors:c.compStaticBehaviors,compDesign:c.compDesign,onClick:c.onClick,mediaQuality:c.mediaQuality,notifyMediaState:this.onMediaChange,setMediaAPI:this.setMediaAPI};return this.createChildComponent(c.compData,"wysiwyg.viewer.components.background.Balata",d,g)}}});define("mediaCommon/mediaLogic/mediaPlayerLogicMixin",["lodash","react","santaProps","utils","balata"],function(a,b,c,d,e){"use strict";var f=d.mediaConsts;function g(b){return a.get(b.compDesign,["background","mediaRef"],a.get(b.compData,["background","mediaRef"]))||{}}return{behaviorsAPI:{play:{methodName:"playMedia"},pause:{methodName:"pauseMedia"},stop:{methodName:"stopMedia"},setVolume:{methodName:"setMediaVolume",params:["volume"]},mute:{methodName:"muteMedia"},unMute:{methodName:"unMuteMedia"},seek:{methodName:"seekMedia",params:["time"]}},propTypes:a.defaults({id:c.Types.Component.id.isRequired,styleId:c.Types.Component.styleId.isRequired,compData:c.Types.Component.compData,compDesign:c.Types.Component.compDesign,compStaticBehaviors:c.Types.Component.compStaticBehaviors,compDynamicBehaviors:c.Types.Component.compDynamicBehaviors,bgStyle:b.PropTypes.object,onClick:b.PropTypes.func,mediaAspect:c.Types.SiteAspects.mediaAspect.isRequired,mediaQuality:c.Types.Media.mediaQuality,isPlayingAllowed:c.Types.RenderFlags.isPlayingAllowed.isRequired},c.santaTypesUtils.getSantaTypesByDefinition(e)),getInitialState:function(){this.registerPlayer(this.props);this.mediaAPI=null;return{}},componentWillReceiveProps:function(a){this.handleVideoDataChange(this.props,a)},handleAutoplay:function(a,b){var c=b===f.playbackTypes.READY;var d=g(a).autoplay;if(c&&d&&a.isPlayingAllowed){this.playMedia()}},handleVideoDataChange:function(a,b){var c=g(b);var d=g(a);if(c.videoId!==d.videoId){this.unregisterPlayer(a);this.registerPlayer(b)}else if(c.autoplay!==d.autoplay&&a.isPlayingAllowed){if(c.autoplay){this.playMedia()}else{this.pauseMedia()}}},registerPlayer:function(b){var c=g(b);if(a.get(c,"type")==="WixVideo"){var d={playerType:"mediaContainer",mediaData:c,services:{fileAvailability:{callback:this.onFileAvailability,mediaQuality:b.mediaQuality}}};b.mediaAspect.registerPlayer(b.id,d)}},unregisterPlayer:function(a){a.mediaAspect.unregisterPlayer(a.id)},updatePlayerState:function(a,b){a.mediaAspect.updatePlayerState(a.id,b)},updateQualityState:function(a,b,c){a.mediaAspect.updateQualityState(b,c)},onMediaChange:function(a){var b=this.props.mediaAspect.getData(this.props.id);var c=this.mediaStateChangeLogic(a,b);if(a.type===f.eventTypes.LOAD){this.handleAutoplay(this.props,c.playbackState)}this.updatePlayerState(this.props,c)},mediaStateChangeLogic:function(a,b){var c={};switch(a.type){case f.eventTypes.MOUNT:c={playbackState:a.playbackState};break;case f.eventTypes.LOAD:c={playbackState:a.playbackState,previousPlaybackState:"",volume:a.volume,fullscreen:false,muted:a.muted,currentTime:a.currentTime,progress:a.progress,seekStarted:false};break;case f.eventTypes.PLAYSTATE:if(a.playbackState===f.playbackTypes.SEEKING){var d=b.playbackState!==f.playbackTypes.SEEKING;c={playbackState:a.playbackState};if(d){c.previousPlaybackState=b.playbackState}}else if(a.playbackState===f.playbackTypes.SEEKING_ENDED){c={playbackState:b.previousPlaybackState}}else{c={playbackState:a.playbackState}}break;case f.eventTypes.ERROR:break;case f.eventTypes.TIME_UPDATE:c={currentTime:a.currentTime};break;case f.eventTypes.PROGRESS:c={progress:a.progress};break;case f.eventTypes.VOLUME:c={volume:a.volume,muted:a.muted};break}return c},onFileAvailability:function(a){this.updateQualityState(this.props,a.videoId,{mediaQuality:a.mediaQuality,mediaReadyState:a.readyState});this.updatePlayerState(this.props,{mediaQuality:a.mediaQuality,mediaReadyState:a.readyState})},setMediaAPI:function(a){this.mediaAPI=a},mediaCommandsLogic:function(b){if(this.mediaAPI){this.mediaAPI(b,a.tail(arguments))}},playMedia:function(){this.mediaCommandsLogic("play")},pauseMedia:function(){this.mediaCommandsLogic("pause")},stopMedia:function(){this.mediaCommandsLogic("stop")},setMediaVolume:function(a){this.mediaCommandsLogic("setVolume",a)},muteMedia:function(){this.mediaCommandsLogic("mute")},unMuteMedia:function(){this.mediaCommandsLogic("unMute")},seekMedia:function(a){this.mediaCommandsLogic("seek",a)},createFillLayers:function(b){var c=a.assign({},this.props,b);var d={skin:"skins.viewer.balata.balataBaseSkin",styleId:c.styleId+f.balataConsts.BALATA};var e={ref:f.balataConsts.BALATA,id:c.id+f.balataConsts.BALATA,parentId:c.id,style:c.bgStyle||f.defaultStyle,compBehaviors:c.compStaticBehaviors,compDesign:c.compDesign,onClick:c.onClick,mediaQuality:c.mediaQuality,notifyMediaState:this.onMediaChange,setMediaAPI:this.setMediaAPI};return this.createChildComponent(c.compData,"wysiwyg.viewer.components.background.Balata",d,e)}}});define("mediaCommon",["lodash","coreUtils","balata","mediaCommon/mediaLogic/fillLogicMixin","mediaCommon/mediaLogic/mediaPlayerLogicMixin"],function(a,b,c,d,e){"use strict";var f=b.mediaConsts;return{balata:c,defaultMediaStyle:f.defaultMediaStyle,popupMediaStyle:f.popupMediaStyle,mediaLogicMixins:{fill:d,mediaPlayer:e}}});